"""
语法
    2.1 强制等待    sleep(时间:S)
    2.2 隐式等待    driver.implicitly_wait(时间:S)
        - 最大等待网页加载完成的时间
        - 针对跳转页面
    2.3 显式等待
        WebDriverWait(driver,timeout,poll_frequency).until()
            - driver: 浏览器驱动的对象
            - timeout: 最大等待时间
            - poll_frequency: 查询间隔/轮询频次
            - until: 直到method执行成功为止
                - method: 执行的方法
                    - 将方法(函数)当做参数传入
                - msg：执行失败返回的信息
"""

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait

# 2. 创建浏览器对象, 并打开指定为网页
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("http://www.baidu.com")

# 3. 元组定位+元素操作
WebDriverWait(driver, 10).until(lambda x: x.find_element(By.ID, "kw")).send_keys("显示等待")
"""
lambda x: x.find_element(By.ID, "kw")
"""
# 4. 关闭浏览器
time.sleep(3)
driver.quit()